import java.util.*;

/**
 * @author LKQ
 * @date 2022/4/9 8:33
 * @description 反向计算，从终点倒推，如果tx == ty, 那么不存在上一个状态，（tx,ty）为起点状态
 * tx > ty, 上一个状态为 （tx-ty, ty)
 * tx < ty 上一个状态为 (tx, ty - tx)
 */
public class Solution {
    public static void main(String[] args) {
        Solution solution = new Solution();
        solution.reachingPoints(1, 1, 3, 5);
    }
    public boolean reachingPoints(int sx, int sy, int tx, int ty) {
        while (tx > sx && ty > sy && tx != ty) {
            if (tx > ty) {
                tx %= ty;
            } else {
                ty %= tx;
            }
        }
        if (tx == sx && ty == sy) {
            return true;
        } else if (tx == sx) {
            return ty > sy && (ty - sy) % tx == 0;
        } else if (ty == sy) {
            return tx > sx && (tx - sx) % ty == 0;
        } else {
            return false;
        }
    }
}
